﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows;

namespace SmartPaginator.Elements
{
    public interface IBlockElement
    {
        IBlockElement GetEmptyCopy();

        HarvestResult Harvest(HarvestingContext context, double remainingHeight, IBlockElement previousElement);

        double CalculateBottomMargin();

        double CalculateTopMargin();

        double CalculateHeight();

        double CalculateMinHeight();

        Thickness Margin { get; set; }

    }
}
